home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Internet Tools 1995 April / Internet Tools.iso / osi / isode / vmsisode / vmsgcc139_tar.Z / vmsgcc139_tar / aaaread.me next >
Encoding:
Text File  |  1991-12-18  |  4.3 KB  |  86 lines

  1.     This distribution contains all of the files that you need in order 
  2. to use GNU C with a VMS system.  The various components have the following 
  3. version numbers:
  4.         GCC-CPP    1.39
  5.         GCC-CC1    1.39
  6.         GCC-AS    1.38.1
  7.         BISON    ?.??
  8.  
  9. All of the executables have been linked on a VMS 4.7 system, and should
  10. run on systems running VMS 4.4 through the latest release.  There have been a
  11. few improvements to GNU C since the last binary distribution which will
  12. be of interest to VMS users.  These changes are:
  13.  
  14.     1) The compiler driver has been much improved.  It no longer leaves
  15. temporary files lying around, and it supports a number of new options.  If
  16. you wish to use the old compiler driver, it is also included with this
  17. distribution, and can be found in the directory [-.gcc-vms.vms.old-driver].
  18. The sources to the new driver can be found in [-.gcc-vms.vms].  For an
  19. up-to-date description of the options that are supported in the new driver,
  20. see the file gcc.hlp (this file can and should be installed in the system
  21. help library).  The new compiler driver also supports the GNU C++ compiler,
  22. although the C++ compiler itself is not included in this distribution.
  23.  
  24.     2) GNU C now generates debugging records for the symbols in C 
  25. programs, and thus variables can now be examined (and set) with the VMS
  26. debugger.
  27.  
  28.     3) A function and block profiler is now provided.  See GCC.HLP for 
  29. more information.
  30.  
  31.     4) Global constants now work properly.  You should be aware that 
  32. you should use the "const" modifier in the declaration of global constants
  33. in each source file in which they appear, or you will get warning messages
  34. from the linker about "conflicting psect attributes".
  35.  
  36.     5) GNU C programs should now work properly with sharable image 
  37. libraries.  Previous versions of GNU C would generate executables that 
  38. would exhibit strange behavior in certain cases where data elements in the 
  39. sharable image library were accessed.  This should no longer occur.  I will
  40. inject a note of caution however:  the qsort routine in VAXCRTL has a known
  41. bug (this bug has not yet been fixed in the latest release of VMS, 5.4-1),
  42. and this routine should be avoided.  The qsort routine in GCCLIB is known
  43. to work properly and should be used instead.  Similarily, there is a bug in
  44. the strncat routine in VAXCRTL, and this routine also should be avoided.
  45. If you attempt to link a program to the shared VAXCRTL,  the linker will
  46. use these routines and pass over the ones in GCCLIB, thus if you attempt to
  47. rebuild the compiler and link it to the sharable VAXCRTL you will get a
  48. brain-dead compiler.
  49.  
  50.     6) The preprocesor, the assembler, and the compiler driver included
  51. with this distribution will work with GNU C++.  You will need to obtain
  52. the compiler itself (gcc-cc1plus, or gcc-cplus), and in addition
  53. the libg++ class library will come in handy.
  54.  
  55.     7) A portion of the manual is included.  This should describe some
  56. of the language features and enhancements that are available in GNU-C, as well
  57. a full description.  I have not included sections dealing with the internal
  58. operations and passes of the compiler. If you want the entire gcc manual, you
  59. must load the gcc distribution.
  60.  
  61.     8) There are enough include files here for many purposes, but this is
  62. not at all a complete set.  At some point in the future, I would like to
  63. augment what we have here with some others that come in quite handy.  I would
  64. also like to point out that some of the include files in the [.include.vms]
  65. directory are redundant, and some of them are hopelessly out of date.  For
  66. many, if not most of these, there are more up to date files available in
  67. [.include].  The files that are out of date and/or redundant are: 
  68.         <vms/xabdef.h>        use <xab.h> instead.
  69.         <vms/xabdatdef.h>    use <xab.h> instead.
  70.         <vms/xabfhcdef.h>    use <xab.h> instead.
  71.         <vms/namdef.h>         use <nam.h> instead.
  72.         <vms/fabdef.h>         use <fab.h> instead.
  73.         <vms/prvdef.h>         use <prvdef.h> instead.
  74.         <vms/ssdef.h>         use <ssdef.h> instead.
  75.  
  76. All of these files are still included with this distribution.
  77.  
  78.     I did add some include files that were easily obtainable.  For example,
  79. gcc, gas, and emacs contain a number of include files for VMS, and these will
  80. now be distributed with the gcc-vms distribution.  A couple of others were
  81. easily generated by machine.  There are still a couple of key header files
  82. missing, and I hope in the near future to include these.
  83.  
  84.  
  85.     9) There are some known sources of incompatibility between GNU-C and VAX-C
  86.